package apps;

import java.util.ArrayList;
import java.util.Date;
import java.util.Hashtable;
import java.util.logging.Level;
import java.util.logging.Logger;

import fr.irit.smac.may.lib.components.messaging.receiver.AgentRef;

import contraintes.*;
import impl.*;
import impl.agentt.UnePresenceImpl;
import impl.agentt.enseignant.UnEnseignantImpl;
import impl.agentt.etudiant.UnEtudiantImpl;
import impl.comp.InfrImpl;
import reservation.*;
import mysticedt.Infr;

public class App {
	private Hashtable<UnEtudiantImpl,Integer> listEtudiant = new Hashtable<UnEtudiantImpl,Integer>();
	private Hashtable<UnEnseignantImpl,Integer> listEnseignant = new Hashtable<UnEnseignantImpl,Integer>();
	private ArrayList<UnePresenceImpl> listPresence = new ArrayList<UnePresenceImpl>();
	private Hashtable<ConstanteUE,Integer> listConstanteUE = new Hashtable<ConstanteUE,Integer>();
	
	public void scenario0(Infr.Component infrComponent) {
		//Initialisation du contexte
//		EmploiDuTemps EdT = new EmploiDuTemps(0,new Date(2012,1,1),new Date(2012,2,1));
//		ConstanteUE ctUE = new ConstanteUE(0,1,0,0);
//		Seance s0 = new Seance(0,-1,2,10,TypeCours.COURS,false);
//		ctUE.ajoutSeance(s0);
//		listConstanteUE.put(ctUE, ctUE.getId());
		
		AgentRef ens0 = infrComponent.createEnseignantAgent().createEnseignantAgent();
		AgentRef etu0 = infrComponent.createEtudiantAgent().createEtudiantAgent();
		//AgentRef pEtu0 = infrComponent.createPresenceAgent().createPresenceEtudiantAgent();
	}
	
	public static void main(String[] args) {
		Infr.Component infrComponent = new Infr.Component(
				new InfrImpl(),
				new Infr.Bridge() {});
		
		App appli = new App();
		Logger logger = Logger.getLogger("logger");
		logger.info("--> Debut du scenario 0");
		appli.scenario0(infrComponent);
		logger.info("--> Fin du scenario 0");
	}
}
